A Ring-Based Occam Multi-Processor Computer
نویسنده
چکیده
This report describes ROMP: a Ring-based Occam Multi-Processor system, which has been constructed for the purpose of investigating techniques for compiling and executing parallel programs on multi-processor computers. ROMP runs Occam 2 programs. Occam channels are multiplexed onto a token ring which links the processors. Shared memory is used to give a very high potential data transfer rate between engines. Both hardware and software are described in detail. The particular virtue of the hardware is its simplicity: no complex memory arbitration logic is required, since access to shared memory is controlled by the ring protocol. The particular virtue of the software is its elegance: the Occam communication model fits especially well on top of a ring protocol. The system incorporates various extensions and modifications to the Occam language; these linguistic innovations are described and justified. Issues relating to the efficient compilation of Occam programs are discussed, in particular the technique of run-time parameterization of multi-processor programs.
منابع مشابه
Mapping Occam-pi programs to a Manycore Architecture
Efficient utilization of available resources is a key concept in embedded systems. This paper is focused on providing the support for managing dynamic reconfiguration of computing resources in the programming model. We present an approach to map occam-pi programs to a manycore architecture, Platform 2012 (P2012). We describe the techniques used to translate the salient features of the occam-pi ...
متن کاملR16: A New Transputer Design for FPGAs
This paper describes the ongoing development of a new FPGA hosted Transputer using a Load Store RISC style Multi Threaded Architecture (MTA). The memory system throughput is emphasized as much as the processor throughput and uses the recently developed Micron 32MByte RLDRAM which can start fully random memory cycles every 3.3ns with 20ns latency when driven by an FPGA controller. The R16 shares...
متن کاملp o ny – The occam - π Network Environment
Although concurrency is generally perceived to be a ‘hard’ subject, it can in fact be very simple — provided that the underlying model is simple. The occam-π parallel processing language provides such a simple yet powerful concurrency model that is based on CSP and the π-calculus. This paper presents pony, the occam-π Network Environment. occam-π and pony provide a new, unified, concurrency mod...
متن کاملA process oriented approach to solving problems of parallel decomposition and distribution
This thesis argues that there is a modern, broad and growing need for programming languages and tools supporting highly concurrent complex systems. It claims traditional approaches based on threads and locks, are non-compositional and do not scale. Instead, it focuses on occam-pi, a derivative from classical Transputer occam whose process oriented concurrency model is based on a combination of ...
متن کاملoccwserv: An occam Web-Server
This paper presents ‘occwserv’, the occam web-server. This is a highly concurrent web-server, written in the occam multi-processing language, that supports the majority of the HTTP/1.1 protocol. Dynamic process and channel creation mechanisms are used to create scalable ‘server-farms’, each responsible for a particular webserver function — for example, reading client requests or running CGI pro...
متن کامل